<!DOCTYPE html>
<html lang="en">
<head>
    <title>大区费用报销列表</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="Cache-Control" content="no-store, must-revalidate">
    <meta http-equiv="expires" content="Wed, 26 Feb 1997 08:21:57 GMT">
    <meta http-equiv="expires" content="-1">
    <meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="shortcut icon" href="/dist/img/icon.png" type="image/x-icon">
    <script src="https://file.ggxqce.com/web/vue.min.js"></script>

    <style>
        body, html {
            width: 100%;
            margin: 0;
            font-family: "微软雅黑";
        }

        #allmap, #allmap2 {
            /*width: 100%;*/
            height: 300px;
            overflow: hidden;
            margin: 0;
            font-family: "微软雅黑";
        }

        [v-cloak] {
            display: none;
        }

        * {
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 12px;
        }

        body {
            margin: 1px;
            background: #ffffff;
        }

        .boxBoy {
            background: #fff;
        }

        table {
            border-spacing: 0;
            border-collapse: collapse;
            display: table;
        }

        .weather {
            text-align: center;
            font-size: 16px;
            /*position: absolute;*/
            top: 5px;
            line-height: 30px;
            float: left;
        }

        th {
            font-weight: normal;
        }

        table.text-center, table.text-center td, table.text-center th {
            text-align: center;
            font-size: 12px;
            margin-top: -1px;
        }

        .table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td {
            border: 1px solid #cbcbcd;
            height: 28px;
            position: relative;
            color: #333;
            padding: 0 4px;
        }

        table th {
            background: #f8f8f8;
        }

        .table-bordered {
            border: 1px solid #cbcbcd;
        }

        .table {
            width: 100%;
            max-width: 100%;
        }

        .hidden {
            display: none;
        }

        .lineOne, .lineTwo {
            text-align: left;
        }

        .tdColor {
            background-color: #f8f8f8;
            font-weight: normal;
        }

        .lineOne span {
            max-height: 24px;
            line-height: 24px;
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 1;
            text-align: left;
        }

        .lineTwo span {
            max-height: 55px;
            line-height: 16px;
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 3;
            text-align: left;
            padding: 5px;

        }

        .div-td-content-more {
            position: absolute;
            height: auto;
            z-index: 999;
            line-height: 20px;
            background-color: #d3e8fd;
            padding: 8px 6px;
            border: 1px solid #e8e8ea;
            display: none;
        }

        .div-td-content-more i {
            width: 15px;
            height: 12px;
            background: url("/dist/img/more-icon.png");
            position: absolute;
            left: 50px;
            top: -12px;
        }

        .clear {
            clear: both
        }

        .boxItem {
            width: 100%;
            margin-top: 5px;
            background: inherit;
            /*background-color: rgba(255, 255, 255, 1);*/
            border: none;
            position: relative;
        }

        .boxItemTitle {
            color: #000;
            font-size: 22px;
            font-weight: bold;
            margin-bottom: 6px;
            text-align: center;
        }

        .home {
            font-size: 14px;
            font-weight: bold;
            margin-bottom: 10px;
            height: 14px;
            line-height: 14px;
            text-align: center;
        }

        .dian-icon {
            background: url("/dist/img/dian.png") no-repeat;
            background-size: cover;
            width: 14px;
            height: 14px;
            display: inline-block;
        }

        .jiaobiao, .jiaobiaoNew {
            position: relative;
        }

        .jiaobiao i {
            display: block;
            width: 0;
            height: 0;
            border-width: 0px 0 12px 12px;
            border-style: solid;
            border-color: transparent transparent transparent #2a8cec;
            position: absolute;
            top: 0px;
            left: 0px;
        }

        .jiaobiaoNew i {
            display: block;
            width: 12px;
            height: 12px;
            background: url("/dist/img/newLog2.png");
            background-size: 100% 100%;
            position: absolute;
            top: 0px;
            left: 0px;
        }

        .lineImg {
            padding-top: 5px !important;
            padding-bottom: 5px !important;
        }

        .lineImg img {
            height: 45px;
            width: 45px;
            float: left;
            margin: 10px;
            object-fit: cover;
        }

        .newCustomer {
            background: url(/dist/img/new.png) no-repeat;
            background-size: cover;
            width: 20px;
            height: 20px;
            right: 0;
            top: 2px;
            position: absolute;
        }

        .wajueji {
            padding-left: 140px;
            background: url("/dist/img/wajueji.png") no-repeat;
            background-size: 120px 88px;
            height: 88px;
            line-height: 88px;
            color: red;
            font-size: 14px;
            font-weight: bold;
            margin-left: 50px;
        }

        .qipao {
            /*background: url(/dist/img/qipao.png);*/
            background-size: 100% 100%;
            height: 88px;
            /* padding: 0 20px; */
            padding-left: 20px;
            /*padding-right: 20px;*/
            color: red;
            line-height: 88px;
            float: left;
            font-size: 14px;
            font-weight: bold;
        }

        .plan1 {
            background: url("/dist/img/plan1.png") no-repeat center center;
            background-size: 100%;
        }

        .plan2 {
            background: url("/dist/img/plan2.png") no-repeat center center;
            background-size: 100%;
        }

        .plan3 {
            background: url("/dist/img/plan3.png") no-repeat center center;
            background-size: 100%;
        }

        .boxItemTitleNotice {
            color: red;
            font-size: 22px;
            font-weight: bold;
            margin-bottom: 10px;
            text-align: center;
        }

        .boxItemTitleNotice i {
            background: url("/dist/img/jg.png") no-repeat center center;
            height: 22px;
            width: 22px;
            background-size: cover;
            display: inline-block;
            margin-bottom: -3px;
            margin-left: 5px;
        }

        .boxItemTitleNoticeTime {
            color: red;
            font-size: 20px;
            font-weight: bold;
            margin-bottom: 10px;
            text-align: center;
        }

        .boxItemTitleNoticeTime i {
            background: url("/dist/img/jg.png") no-repeat center center;
            height: 16px;
            width: 16px;
            background-size: cover;
            display: inline-block;
            margin-bottom: -3px;
            margin-left: 5px;
        }

        .search-button {
            width: 14px;
            height: 14px;
            background-image: url(/dist/img/glass.jpg);
            border: 0 none;
            cursor: pointer;
            margin-top: 0px;
        }

        input[type=button] {
            outline: none;
        }

        .oaBtn {
            background: url(/dist/img/btn-bj2.png) repeat-y !important;
            background-size: 100% 100% !important;
            color: #fff !important;
        }

        .btn-group-sm > .btn, .btn-sm {
            padding: 2px 10px;
        }

        .btn {
            border-radius: 3px;
            -webkit-box-shadow: none;
            box-shadow: none;
            border: 1px solid transparent;
        }

        .pull-right {
            float: right !important;
        }

        .blue {
            color: #39c;
        }

        .red {
            color: #e03800;
        }

        .weather img {
            height: 30px;
            width: 30px;
            float: left;
        }

        .templateStyle {
            margin-top: 10px;
            margin-left: 10px;
            margin-right: 10px;
        }
        .line{
            border-bottom: 4px solid #2a8cec;
        }

    </style>
</head>
<body>
<section class="content" id="app" v-cloak>
    <div class="div-td-content-more"><i></i></div>
    <div class="templateStyle">
        <div class="boxItem">
            <div class="boxBoy">
                <table class="table table-bordered text-center table-width">
                    <tbody>
                    <tr>
                        <td class="tdColor" style="width: 15%">时间</td>
                        <td class="tdColor" style="width: 20%">费用名称</td>
                        <td class="tdColor" style="width: 15%">金额(元)</td>
                        <td class="tdColor" style="width: 10%">有无<br>发票</td>
                        <td class="tdColor" style="width: 16%">报销状态</td>
                        <td class="tdColor" style="width: 22%">说明</td>
                    </tr>
                    <template v-if="cost.list.length>0">
                        <tr v-for="(item,i) in cost.list">
                            <template v-if="item.money!='0'">
                                <td>{{(item.reportDate).substr(5,10)}}</td>
                                <td @click="lookCostView(item)" v-if="item.auditFlag!=''"
                                    style="text-align:center;color:#169BD5;cursor: pointer">
                                    {{item.costSmallName}}
                                </td>
                                <td v-else>{{item.costSmallName}}</td>
                                <td v-if="item.money=='0'">
                                    -
                                </td>
                                <td v-else="">
                                    {{item.money}}
                                </td>
                                <td>
                                    {{item.invoiceFlag=="1"?"有":"无"}}
                                </td>
                                <td>
                                    {{item.bxState=="1"?"已报销":item.bxState=="-1"?"已作废":"未报销"}}
                                </td>
                                <td class="lineOne">
                                    <span>{{item.remark}}</span>
                                </td>
                            </template>
                        </tr>
                        <tr>
                            <td>合计</td>
                            <td>-</td>
                            <td>{{cost.all.money?fmoney(cost.all.money):"0"}}</td>
                            <td>-</td>
                            <td>-</td>
                            <td>-</td>
                        </tr>
                    </template>
                    <template v-else>
                        <tr>
                            <td colspan="6">暂无数据~</td>
                        </tr>
                    </template>
                    </tbody>
                </table>
            </div>
        </div>
        <div class="clear"></div>
    </div>
</section>
<!--JQ-->
<script src="https://file.ggxqce.com/web/jquery-2.2.3.min.js"></script>
<!--插件JS-->
<script src="/dist/plugins/scroll/myScroll.js"></script>
<!--框架已定义 JS-->
<!--oa自定义  JS-->
<script src="/dist/js/oaApp.js"></script>

<script type="text/javascript" src="/dist/plugins/lhgdialog/lhgdialog.min.js?self=true"></script>
<script>
    $(function () {
        $("body").on("click", ".lineOne", function (e) {
            if ($(".div-td-content-more").is(":hidden")) {
                var text = $(this).text();
                if (text != "") {
                    text = "<i></i>" + text;
                    $(".div-td-content-more").html(text).css({
                        "width": $(this).outerWidth() + "px",
                        "left": $(this).offset().left,
                        "top": ($(this).offset().top + $(this).outerHeight()) + "px"
                    }).show();
                    e.stopPropagation();
                }
            } else {
                $(".div-td-content-more").hide();
            }
        });
        $("body").on("click", ".div-td-content-more", function (e) {
            e.stopPropagation();
        });
        $("body").on("click", function () {
            $(".div-td-content-more").hide();
        });
    });
</script>
<script>
    $.ajaxSetup({
        global: true,
        type: "POST",
        cache: false,
        dataType: "json",
        contentType: 'application/json;charset=utf-8',
        beforeSend: function () {
        },
        complete: function () {

        },
        error: function (e) {
            alert('error' + e.responseText);
        }
    });
    $.extend($.wyui, {
        postMethod: function (url, data, callback, sync, id) {
            if (!id) {
                id = "#app"
            }
            $.ajax({
                url: server.ip + url,
                async: sync ? false : true,
                data: JSON.stringify(data),
                beforeSend: function () {

                },
                complete: function () {
                    setTimeout(function () {
                    }, 1000);

                },
                success: function (r) {
                    if (!r.e.code) {
                        callback(r.data.sendData);
                    } else {
                        alert(r.e.desc);
                    }
                },
                error: function (e) {
                    alert(url + e.responseText);
                }
            });
        },
    });
</script>
<script type="text/javascript">
    var app = new Vue({
        el: '#app',
        data: {
            userId: getUrlParamObj().userId,
            yesterday: new Date(new Date() - 24 * 60 * 60 * 1000).Format("yyyy-MM-dd"),
            today: new Date().Format("yyyy-MM-dd"),//今天
            hour: new Date().getHours(),
            thisMonth: new Date().Format("yyyy-MM"),
            thisWeek: new Date().Format("yyyy-MM-dd") + "-w",
            tab: [],
            cost: {
                time: getUrlParamObj().dateTime,
                list: [],
                all: {"money": "", "bxMoney": "", "unBxMoney": ""}
            }
        },
        methods: {
            fmoney: function (s, n) {
                n = n > 0 && n <= 20 ? n : 2;
                s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + "";
                var l = s.split(".")[0].split("").reverse(), r = s.split(".")[1],
                    t = "";
                for (i = 0; i < l.length; i++) {
                    t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
                }
                return t.split("").reverse().join("") + "." + r;
            },
            //获取合计
            getCount: function (arr, key) {
                var number = 0;
                for (var i = arr.length - 1; i >= 0; i--) {
                    number += (arr[i][key] && arr[i][key] != '-' ? arr[i][key] : 0)

                }
                return number;
            },
            //合并单元格
            tablesMergeCell: function (list) {
                for (field in list[0]) {
                    var k = 0;
                    while (k < list.length) {
                        list[k][field + 'span'] = 1;
                        list[k][field + 'dis'] = false;
                        for (var i = k + 1; i <= list.length - 1; i++) {
                            if (list[k][field] == list[i][field] && list[k][field] != '') {
                                list[k][field + 'span']++;
                                list[k][field + 'dis'] = false;
                                list[i][field + 'span'] = 1;
                                list[i][field + 'dis'] = true;
                            } else {
                                break;
                            }
                        }
                        k = i;
                    }
                }
                return list;
            },
            //获取费用报表-区域经理
            get_costPersonal: function () {
                var that = this;
                $.wyui.postMethod(urlConfig.report.reportCost.getForPersonalByUserIdAndDateTime, {
                    "userId": that.userId,
                    "dateTime": that.cost.time,
                    "start": getUrlParamObj().start
                }, function (data) {
                    that.cost.list = that.tablesMergeCell(data);
                    that.cost.all.money = that.getCount(that.cost.list, "money");
                    that.cost.all.bxMoney = that.getCount(that.cost.list, "bxMoney");
                    that.cost.all.unBxMoney = that.getCount(that.cost.list, "unBxMoney");
                    console.log(data);
                });
            },
            lookCostView: function (item) {
                var that = this;
                var obj = {
                    type: 'cost',
                    costType: item.costSmallName,
                    id: item.costId
                }
                prompt(JSON.stringify(obj))
            }
        },
        mounted: function () {
            var that = this;
            this.get_costPersonal();
        }
    });
</script>

</body>
</html>